package com.xlkj.ms.tools.core.response;

import java.io.Serializable;

/**
 * 自定义响应包装类
 * @author zhuqifeng
 * @date 2021/11/10 13:59
 * @package com.xlkj.ms.tools.core.response
 */
public interface ResponseWrapper extends Serializable {

    /**
     * 包装处理成功的响应（默认响应成功为200-成功）
     */
    void wrapperSuccess();

    /**
     * 包装系统异常（默认响应系统异常为999-系统异常）
     */
    void wrapperSystemError();

    /**
     * 包装参数错误的响应（默认参数错误为998-参数错误：%wd，其中"%wd"为illegalArguments）
     * @param illegalArguments 具体的参数错误信息（或字段名）
     */
    void wrapperIllegalArgument(String... illegalArguments);

    /**
     * 调用方可以根据这个方法判断接口调用是否成功
     * @return
     */
    boolean judgeSuccess();
}
